// 一个混入就是一个对象
// 全局混入建议存放全局用到的方法或者数据变量
// 混入缺点：容易造成命名冲突
// 如果混入对象里面有和组件里面同名的方法或者数据变量，会覆盖组件里面的方法或者数据变量
// 如果混入对象里面有和组件里面同名的生命周期函数，会执行混入对象里面的生命周期函数
import store from '@/store'

export default {
  data() {
    return {
      // mixin: 'This is mixin data.'
    }
  },
  computed: {
    // mixinComputed() {
    //   return 'This is mixin computed.'
    // }
  },
  created() {
    // this.hello()
  },
  methods: {
    // hello() {
    //   console.log('hello from mixin!')
    // }
    // 检测是否拥有按钮权限的方法
    checkBtnPermission(str) {
      // 保证有角色信息
      const roles = store.state.user.userInfo.roles
      if (roles && roles.points) {
        // 判断str是否在用户的按钮权限列表里面
        return roles.points.includes(str)
      } else {
        return false
      }
    }
  },
  mounted() {
    // console.log('mixin mounted')
  }
}
